import store from '@/store'

// 变量的名称就是指令的名字
export const imgerror = {
  // el: 指令绑定的dom对象
  // options: 接收指令相关的信息
  // options.value可以获取传递过来的值
  inserted: function(el, options) {
    // console.log('el', el)
    // console.log('options', options)
    // onerror: 加载图片失败会自动触发的事件,可以通过事件的回调函数设置一个默认的图片地址 可以配置自定义指令实现
    el.onerror = () => {
      // console.log('图片加载失败,给一个默认图片')
      el.src = options.value
    }
  }
}

// 指令来实现按钮级别的权限控制不同的用户,看到不同的操作
export const allow = {
  // el: 指令绑定的dom对象
  // options: 接收指令相关的信息
  // options.value可以获取传递过来的值
  inserted: function(el, options) {
    // 获取到用户的按钮级别的权限信息
    const points = store.state.user.userInfo.roles.points
    console.log(points)
    // 如果没有按钮的权限,那么久隐藏该指令绑定的dom对象
    if (!points.includes(options.value)) {
      el.style.display = 'none'
    }
  }
}

export const focus = {
  inserted: function(el, optiions) {
    el.focus()
  }
}
